"use strict";
cc._RF.push(module, 'dc290O8lT1EgpX3EaKNfzGx', 'GameStatus');
// resources/Script/Ssg/Core/GameStatus.js

"use strict";

var JsonUtil = require("JsonUtil");
var WXAds = require("WXAds");

window.GameStatus = function () {

    var _static = {
        /**
         * 进入游戏调用
         * @param logLevel
         */
        load: function load(logLevel) {
            Log.info("******  SSG  开始加载游戏数据  *****");
            if (logLevel) {
                SystemInfo.setLogInfo(logLevel);
            }
            SystemInfo.setPlatform();
            SystemInfo.addGameStartTime();

            UIHelper.showLoaing();
            //加载http的ip 以及错误码
            var self = this;
            JsonUtil.loadFile("resources/Script/Ssg/config.json", true, function (configobj) {
                Log.info(JSON.stringify(configobj));
                HttpUtil.setIp(configobj.httpIp);
                HttpUtil.setErrorCode(configobj.errorCode);
                //渠道相关生命周期初始化
                self.channelInit(configobj);
            });

            //静音
            if (SystemInfo.getIsOpenMusic() == "false") {
                SoundUtil.openMusic(false);
                SoundUtil.openEffect(false);
            }

            Log.info("******  SSG  加载完毕  *****");
        },

        /**
         * 开始游戏调用
         */
        run: function run() {
            Log.info("******  SSG  进入游戏  *****");
            SystemInfo.addGameRuningTime();
            SystemInfo.setIsRunning(true);
        },

        /**
         * 游戏结束调用
         */
        over: function over() {
            Log.info("******  SSG  一局游戏结束  *****");
            SystemInfo.setIsRunning(false);
        },

        channelInit: function channelInit(configobj) {
            if (SystemInfo.getPlatform() == 'qqPlay') {
                new BK.Game({
                    //点击“分享游戏”后响应。（可选）
                    onShare: function onShare(app) {
                        SoundUtil.pauseMusic();
                        BK.Script.log(0, 0, "onShare");
                        var shareInfo = {
                            summary: configobj.share.default.content,
                            localPicPath: configobj.share.default.localImgUrl,
                            picUrl: configobj.share.default.shareImgUrl,
                            extendInfo: configobj.share.default.exetInfo ? configobj.share.default.exetInfo : UserInfo.userId
                        };
                        return shareInfo;
                    }
                });

                //console.log('注册监听事件 分享返回游戏重新回到前台，再放一次音乐')
                BK.onEnterForeground(function () {
                    Log.debug('播放上一次的背景音乐');
                    SoundUtil.resumeMusic();
                });

                BK.onEnterBackground(function () {
                    Log.debug('回到后台，停止音乐播放');
                    SoundUtil.pauseMusic();
                });

                SystemInfo.setGameQuery(GameStatusInfo.gameParam); //设置进游戏的参数
            }

            if (SystemInfo.getPlatform() == 'weChatGame' || SystemInfo.getPlatform() == 'weChat') {
                wx.onShow(function (res) {
                    Log.debug('播放上一次的背景音乐');
                    SoundUtil.resumeMusic();
                });

                wx.onHide(function () {
                    Log.debug('回到后台，停止音乐播放');
                    SoundUtil.pauseMusic();
                });

                WXAds.init(configobj.wxBannerId, configobj.wxVideoId);
                SystemInfo.setGameQuery(wx.getLaunchOptionsSync().query); //设置进游戏的参数
            }

            //设置分享信息
            console.log(" --------------------- ShareUtil:" + ShareUtil);
            // console.log(" --------------------- configobj.share:"+JSON.stringify(configobj.share));
            ShareUtil.setShareInfo(configobj.share);
        }
    };
    return _static;
}();

module.exports = GameStatus;

cc._RF.pop();